home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / t_os / vdtwn / tvf / asmhd6 / comdhd6 / sdset.hd6 < prev   
Text File  |  1993-07-08  |  4KB  |  336 lines

  1. ds_name        db    '\SDSET',0
  2.  
  3. paint_wd:
  4.      call wari_set1
  5.      call wari_set
  6.      WD_LEFT
  7.      ret
  8.  
  9. re_paint:
  10. mouse_in:
  11.  
  12.      ret
  13.  
  14.  
  15.  
  16. mos_bios    macro
  17.  
  18.     call fword ptr fs:[40h]
  19.     endm
  20.  
  21. sound_bios macro
  22.  
  23.     call fword ptr fs:[80h]
  24.     endm
  25.  
  26. int_bios    macro
  27.     call fword ptr fs:[1a0h]
  28.     endm
  29.  
  30. int_save    macro
  31.  
  32.     mov ah,30h
  33.     call fword ptr fs:[1c0h]
  34.     endm
  35.  
  36. int_load    macro
  37.  
  38.     mov ah,31h
  39.     call fword ptr fs:[1c0h]
  40.     endm
  41.  
  42. ;=========================================
  43.  
  44.  
  45. mae_komi4:
  46.     call sub_esi
  47.     db 30 dup(0)
  48.  
  49.  
  50. mae_ad1:
  51.     call sub_esi
  52.     dw     0    ;seg
  53.     dd     0     ;adr
  54.     dd    0     ;real ad
  55.  
  56. wari_set1:
  57.  
  58.     mov ah,1
  59.     call MOUSE
  60.  
  61.     call mae_komi4
  62.     mov ax,804h
  63.     int_bios
  64.  
  65.     mov ax,704h    ;ユーザー割り込みの削除 2
  66.     int_bios
  67.  
  68.     mov ah,2    ;マウス割り込みの終了 3
  69.     int_bios
  70.  
  71.  
  72.     ret
  73.  
  74.  
  75. wari_set:
  76. mos_test proc near
  77.  
  78.     push    dword ptr 110h
  79.     pop    fs
  80.  
  81.     push ds
  82.     pop gs
  83.  
  84.  
  85.     call MOS_init
  86.  
  87.     push ds
  88.     pop es
  89.  
  90.     mov ax,0201h
  91.     mos_bios
  92.  
  93.  
  94.     ret
  95.  
  96. be_called:
  97.     
  98.     mov ax,0200h
  99.     mos_bios
  100.     
  101.     mov ah,25
  102.     mov al,2
  103.     mov bx,0
  104.     call komei       ; 画面0 cls
  105.  
  106.     mov ah,25
  107.     mov al,2
  108.     mov bx,1
  109.     call komei       ; 画面1 cls
  110.     
  111.  
  112.     call MOS_end
  113.  
  114. Bye:
  115.     mov ax,4c00h
  116.     int 21h
  117. Error:
  118.     mov ax,4c01h
  119.     int 21h
  120.  
  121. ;==============================
  122. MOS_init:
  123.  
  124.     mov cl,4dh
  125.     mov ax,2502h
  126.     int 21h
  127.     jc Error
  128.  
  129.     call mae_ad1
  130.     mov ax,es
  131.     mov [esi],ax
  132.     mov [esi+2],ebx
  133.  
  134.  
  135.     push ds
  136.     pop es
  137.  
  138.     mov cl,4dh
  139.     mov ax,2503h
  140.     int 21h
  141.     jc Error
  142.  
  143.  
  144.     call mae_ad1
  145.     mov [esi+6],ebx
  146.  
  147.     push ds
  148.     mov cl,4dh
  149.     lds edx,fs:[1a8h]
  150.     mov ax,2506h
  151.     int 21h
  152.     pop ds
  153.     jc Error
  154.  
  155.     mov ax,0
  156.     call Mos_work
  157.     mov ecx,4096        ;++
  158.     push ds
  159.     pop gs
  160.     mos_bios
  161.  
  162.  
  163.     mov ah,0
  164.     int 90h             ;key boad bios 初期化
  165.  
  166.     mov ah,02h
  167.     mov dx,0000001000000000b
  168.     int 90h           ;key coad style set
  169.     
  170.     mov ah,03h
  171.     mov dx,0000001000000000b
  172.     int 90h        ;key coad read style set
  173.  
  174.     mov ah,30h
  175.     call fword ptr fs:[80h]
  176.     
  177.  
  178.  
  179.     mov ah,1
  180.     call Mos_stack
  181.     add edx,4098
  182.     int_bios
  183.  
  184.  
  185. ;    call usr_pr
  186. ;    call usr_work
  187. ;    mov [esi],edi
  188.  
  189. ;    push cs
  190. ;    pop eax
  191. ;    mov [esi+4],eax
  192.  
  193. ;    push ds
  194. ;    pop eax
  195.  
  196. ;    mov [esi+8],eax
  197. ;    mov [esi+12],eax
  198. ;    mov [esi+16],eax
  199. ;    mov [esi+20],eax
  200.  
  201. ;    mov eax,110h
  202. ;    mov [esi+16],eax
  203. ;    mov ax,604h
  204. ;    int_bios
  205.  
  206.     mov ah,16h
  207.     mov bl,0ffh
  208.     mov cx,0b0h
  209.     sound_bios
  210.  
  211.     ret
  212.  
  213. Mos_work:
  214.     call sub_edi
  215.     db 4100 dup (0)
  216.  
  217. Mos_stack:
  218.     call sub_edx
  219.     db 4100 dup (0)
  220.  
  221. ;============================
  222.  
  223. Mos_end:
  224.     mov ah,16h
  225.     mov bl,0
  226.     sound_bios
  227.  
  228.     mov ah,1    ;マウスバイオスの終了 1
  229.     mos_bios
  230.  
  231.  
  232. ;    mov ax,704h    ;ユーザー割り込みの削除 2
  233. ;    int_bios
  234.  
  235.     mov ah,2    ;マウス割り込みの終了 3
  236.     int_bios
  237.  
  238.  
  239.  
  240.     call mae_ad1
  241.     mov ax,[esi]
  242.     mov edx,[esi+2]
  243.     mov ebx,[esi+6]
  244.  
  245.     push ds
  246.     mov ds,ax
  247.  
  248.     
  249.  
  250.     mov cl,4dh
  251.     mov ax,2507h
  252.     int 21h
  253.     pop ds
  254.  
  255.  
  256.     call mae_komi4
  257.     mov ax,604h
  258.     int_bios
  259.  
  260.     mov ah,0
  261.     int 90h        ;key bios syokika
  262.     
  263.     GAMEN 1616
  264.  
  265.  
  266.     ret
  267.  
  268. mos_test    endp
  269.  
  270.  
  271. ;==================
  272. ;    align    4
  273. ;usr_pr:
  274. ;    call sub_edi
  275. ;usr     proc far
  276.  
  277. ;    call pal_work
  278. ;    call pal_d
  279.  
  280. ;    movzx eax,byte ptr [esi+8]
  281. ;    add ax,[edi]   ;word ptr [pal_d]
  282. ;    jne #skip1
  283. ;    mov word ptr [edi],8
  284. ;    jmp #skip2
  285. ;#skip1:
  286. ;    cmp ax,100h
  287. ;    jl #skip2
  288. ;    mov word ptr [edi],-8
  289. ;    mov al,248
  290. ;#skip2:
  291. ;    mov [esi+8],al
  292. ;    mov [esi+9],al
  293. ;    mov [esi+10],al
  294. ;    mov ax,400h
  295.  
  296.  
  297. ;    call zzz
  298.  
  299.  
  300. ;    ret
  301.  
  302. ;usr    endp
  303.  
  304. ;zzz:
  305. ;    M_ZZZ
  306.  
  307. ;================================
  308.  
  309. ;    align 4
  310. ;usr_work:
  311. ;    call sub_esi
  312. ;    dd    0,0
  313.  
  314. ;usr_ds dd 0    ;8
  315. ;usr_es dd 0    ;12
  316. ;usr_fs dd 0    ;16
  317. ;usr_gs dd 0    ;20
  318.  
  319. ;pal_work:
  320. ;    call sub_esi
  321. ;    dd 1,6
  322. ;    db 0,0,0,0
  323.  
  324. ;pal_d:
  325. ;    call sub_edi
  326. ;    dw    8
  327.  
  328.  
  329. look_me:
  330.      call sub_esi
  331.      dd 0,0
  332.      dw     1,0,40,24,593,25,15,5,0,0
  333.  
  334.  
  335.  
  336.